iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 11
0
DevOps

30天完成本地部署 kubernetes系列 第 11

部署 Kubernetes 群集(2):部署 worker 節點

  • 分享至 

  • xImage
  •  

昨天部署完 kubernetes master 節點後,再來就可以部署 worker 節點。

利用部署 master 節點時,指令 kubeadm init... 提供的訊息,即可進行 worker 節點的部署。

worker 節點部署步驟

  1. 如同昨天的準備步驟,在 worker 節點上安裝 kubeadm、kubelet、kubectl,並關閉 swap。
KUBERNETES_VERSION='=1.15.0-00'

for NODE in worker1 worker2
do
    ssh ${NODE} "
        sudo apt update -y;
        sudo apt install -y apt-transport-https curl gpg;
        curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - ;
        echo 'deb https://apt.kubernetes.io/ kubernetes-xenial main' | sudo tee /etc/apt/sources.list.d/kubernetes.list ;
        sudo apt update -y ;
        sudo apt install -y kubelet${KUBERNETES_VERSION} kubeadm${KUBERNETES_VERSION} kubectl${KUBERNETES_VERSION} ;
        sudo apt-mark hold kubelet kubeadm kubectl ;
        
        sudo swapoff -a ;
        sudo sed -i -e 's/^\\([^#].*swap.*\\)$/#\\1/g' /etc/fstab ;
        "
done
  1. 由 kubeadm init 產生的資訊中,取得用於 kubeadm join 的 token 及 hash 值。
TOKEN=$(cat init | grep 'kubeadm join' | rev| cut -d' ' -f2 | rev)
HASH=$(cat init | grep 'discovery-token-ca-cert-hash' | rev | cut -d: -f1 | rev)
  1. 將 worker 節點加入 kubernetes 群集。
for NODE in worker1 worker2
do
    ssh ${NODE} "sudo kubeadm join ${MASTERIP}:6443 --token ${TOKEN} --discovery-token-ca-cert-hash sha256:${HASH}"
done

如此即完成 kubernetes 的 master 及 worker 節點部署,有了最基本的 kubernetes 群集。

$ kubectl get nodes
NAME      STATUS     ROLES    AGE     VERSION
master1   Ready      master   9m54s   v1.15.0
worker1   NotReady   <none>   69s     v1.15.0
worker2   NotReady   <none>   98s     v1.15.0

上一篇
部署 Kubernetes 群集(1):部署 master 節點及 networking model
下一篇
如何在 Kubernetes 中使用 CephFS(1)
系列文
30天完成本地部署 kubernetes30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言